﻿// --------------------------------------------------------------------------------------
// <copyright file="IRetrieveContent.cs" company="NGroup">
// Copyright (c) NGroup. All rights reserved.
// </copyright>
// --------------------------------------------------------------------------------------
// <history>
//     <change who="Bui Thanh Nam" date="2013.12.15">Create</change>
// </history>
// --------------------------------------------------------------------------------------

namespace NGroup.VTL.DAL.Abstraction
{
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Data;
    using NGroup.VTL.Core.Const;
    using NGroup.VTL.Models;

    public interface IRetrieveContentDAO
    {
        List<ProductModel> GetProductListByTypeAndPagingInfo(int parentTypeID, int? childTypeID, LanguageCodes lang, ref PagingInfoModel pagingInfo);

        ProductModel GetProductDetail(int parentTypeID, int childTypeID, string uniqueString, LanguageCodes lang, out List<ProductModel> relatedProducts);

        NewsModel GetNewsDetail(string uniqueString, LanguageCodes lang);

        Dictionary<string, List<ProductModel>> GetHomePageProductList(LanguageCodes lang);

        List<NewsModel> GetNewsListByTypeAndPagingInfo(int? typeID, LanguageCodes lang, ref PagingInfoModel pagingInfo);

        bool PlaceOrder(OrderModel order);
    }
}
